Computer-implemented securities trading system

ABSTRACT

A computer-implemented financial management system provides the trading of securities via a network using virtual currency. A server computer receives buy and sell orders for derivative financial instruments from a plurality of client computers. The server computer attempts to match the buy and sell orders and then generates a market price through the use of a virtual specialist program executed by the server computer. The virtual specialist program responds to an imbalance in the matching of the buy and sell orders. The virtual currency accumulated by HSX account holders as a result of successful trading may be converted to another currency, credited toward the cost of merchandise provided through a vendor&#39;s web site, etc.

CROSS REFERENCE TO RELATED APPLICATION

This is a continuation of application Ser. No. 09/465,607, filed Dec.17, 1999, now pending, which is a continuation of application Ser. No.09/184,571, filed Nov. 2, 1998, issued on Jan. 7, 2003 as U.S. Pat. No.6,505,174, which is a continuation-in-part of application Ser. No.08/620,906, issued on Sep. 7, 1999 as U.S. Pat. No. 5,950,176.

COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor of the patent disclosure as it appears in the Patent and TrademarkOffice patent files or records, but otherwise reserves all copyrightrights whatsoever.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates in general to computer-implemented financialsystems, and in particular to an improved automated securities tradingsystem.

2. Description of Related Art

Computer-implemented securities trading systems are well known in theart. One such system is that disclosed in U.S. Pat. No. 4,674,044,issued to Kalmus et al., entitled “Automated Securities Trading System”,and incorporated by reference herein. These computer-implementedsecurities trading systems obtain bid and asked trades based on the bidand asked prices. However, there is generally still a human component tosuch systems.

For example, most financial markets also employ one or more marketmakers called “specialists.” These specialists fill customer orders fromthe specialist's inventory position if there are no matches for thecustomer orders in the open market. In the prior art, the specialistfunction is not automated, but is performed by a firm or individual.Thus there is a need in the art for an improved computer-implementedtrading system that includes an automated specialist function to createa market for the securities traded and to lessen the volatility ofsmaller securities markets.

SUMMARY OF THE INVENTION

Accordingly, it is an object of this invention to solve the problemswith existing systems described above.

Another object of the present invention is to lessen the pricevolatility of derivative financial instruments traded in narrowermarkets.

Another object of the present invention is to provide an on-line virtualtrading system.

Another object of the present invention is to provide a virtualspecialist program that engages in trading in the market to offset theprice volatility and to provide liquidity to the market.

Another object of the present invention is to provide a securityinstrument pricing system which depends from buy-sell trade imbalances.

Another object of the present invention is to provide a securityinstrument price control system which controls volatility of a security.

Another object of the present invention is to provide a securityinstrument trade halting system to prevent extreme price volatility fora security instrument.

Another object of the present invention is to provide a ghost trader fora security in order to generate trading activity so that adjusted marketcontrol factors take effect.

Another object of the present invention is to provide a virtual reservebank program to control money market interest rates and globalvolatility for the virtual market.

Another object of the present invention is to provide an on-line marketresearch tool which researchers can access to obtain statisticalinformation based on trading behavior.

To overcome the limitations in the prior art, and to overcome otherlimitations that will become apparent upon reading and understanding thepresent specification, the present invention discloses a method,apparatus, and article of manufacture for a computer-implementedfinancial management system that permits the trading of securities via anetwork. In accordance with the present invention, a server computerreceives buy and sell orders for derivative financial instruments from aplurality of client computers. The server computer matches the buyorders to the sell orders and then generates a market price through theuse of a virtual specialist program executed by the server computer. Thevirtual specialist program responds to an imbalance in the matching ofthe buy and sell orders.

In one embodiment, a database of securities is provided for trading inan open, computerized, exchange. Securities are listed which relate tomovies, actors, products or service companies.

Users may access the system over a network, using a standard interface.An exemplary system comprises a Web server with an SQL compliantback-end database, with a standardized Web browser interface. Using theWeb browser, the user may register for the on-line trading system over anetwork, providing demographic information, such as age, sex, location,occupation, income, hobby interest, and the like. Once registered, theuser is given the option of choosing a unique userID which will be usedfor logging in after registration. In providing the demographicinformation, the user also provides an e-mail address to which arandomly assigned password and other instructional information can beforwarded.

Once the user has received a password, the user may freely log in andout of the system over the Web by selecting a start button present on aWeb home page for the system. However, while the password is beingforwarded to the new user, the new user is given temporary access to thesystem so that trading can begin instantaneously.

Automatically, the user is provided with a fixed quantity of virtualcurrency in virtual dollars (V$) from a reserve bank program, describedbelow, to begin trading with. This quantity can either be considered aloan from the reserve bank program, for which interest is charged, or agift.

After logging in, the user's portfolio summary page is displayed whichdisplays the user's current cash balance, amount held in stocks, bonds,and other types of securities. When the new user logs in, the cash valueof the user's portfolio is represented solely in cash, or in a moneymarket account. The cash in the user's portfolio accrues at an interestrate set by a virtual reserve bank program.

The user may trade security instruments by typing in the symbol for theinstrument for which a purchase is desired in a buy-sell area of thepage. A quantity is also specified in the buy sell area. If the userdoes not know the symbol for a particular instrument, a lookup or searchfunction is provided in another area of the screen using standardgraphical user interface (GUI) features such as drop-down list boxes,text search boxes, or slider bar lists. Alternatively, a ticker tapestyle updating menu at the bottom of the screen displays availableinstruments with the corresponding instrument prices.

Once the user has successfully entered the symbol for an availableinstrument, a buy button may be pressed in the buy-sell area of thepage. If the user has enough cash on account, and if the instrument isavailable for trading, then a confirmation screen appears beforeexecution of the transaction. Upon confirmation, the trade is executed,and the cash is debited from the user's account.

If the user wishes to sell a security instrument, the same procedure isfollowed, except, a sell button is clicked on in the buy-sell area ofthe Web page. After confirmation, the market price for the shares soldis added to the user's account, and the shares are made available in thesystem for fulfilling purchase orders.

The system includes a virtual specialist program which, among otherthings, handles fulfillment of buy and sell orders. In the embodiment ofthe present system, the virtual specialist program controls the economy,and provides it with liquidity. In one embodiment, the virtualspecialist program provides instantaneous liquidity by fulfilling allorders, whether or not there are equal and matching sell orders tooffset buy orders, and vice versa. The system keeps a running netmovement balance for the quantity of buy or sell trades which thevirtual specialist program had to fulfill without offsetting sell or buytrades. The imbalance is stored as a positive number if the buy-sellimbalance represents more buy trade orders executed than sell orders, ora negative number if the buy-sell imbalance represents more sell ordersexecuted than buy orders.

Unlike the case with non-virtual markets, the virtual specialist programof the embodiment does not control the economy by setting prices ofshares based on last executed buy order price offered. Rather, thevirtual specialist program determines the price of an instrument aftereach trade by computing and effecting an outstanding buy-sell imbalance.

The buy-sell imbalance, also referred to herein as the net movementbalance (NMB), controls security prices by incrementing or decrementingsecurity prices using a combination of a security price increment (SPI)constant, and a pair of security price threshold constants. Both apositive security price threshold (PSPT) constant, and a negativesecurity price threshold (NSPT) constant is set in a security constanttable 2002 for each security in the system. A net trade movement (NTM)variable for a trade order is set to the positive quantity of shares inthe trade order if the trade order is a buy, and to the negativequantity of shares in the trade order if the trade order is a sell. Anew NMB is calculated by adding the NMB before the trade, retrieved froma net price movement table 2008 (NMB (old)), to the NTM.

A security price increment (SPI) constant for the security which is thesubject of the trade order is retrieved from the security constant table2002. The NMB is then compared to the PSPT. If the NMB is greater thanthe PSPT, then the price for the security (SP) is calculated by addingthe SPI to the SP before the trade which was retrieved from a securityprice table 2006. The NMB is then reduced by the PSPT and stored back tothe net price movement table.

Conversely, if the NMB is less than the NSPT (a negative value) then theSP (new) is calculated by subtracting the SPI from the SP (old). The NMBis then incremented by the NSPT.

After the above calculations are made, the SP is stored in a securityprice table 2006, which keeps track of all security prices. The NMB isupdated in the net movement balance database. Each record of the netmovement balance database further contains an increment tracking fieldfor keeping track of the number of consecutive increments for thesecurity instrument, up or down. Also, a price history tracking table2010 is updated after each trade, performing a write SQL statement whichadds a record comprising the SP, NMB, UserID, and other informationrelating to the trade. This information is used by a marketing tool,explained below, which provides statistical information to marketresearchers.

Periodically, due to natural popularity of a particular security, or bymarket manipulation by an individual or groups of traders, the securitywill realize wild fluctuations in price. This is especially true in amarket in which virtual currency is used in a virtual market. Given thespecial circumstances of the virtual market, the system provides anartificial price control, or braking, mechanism.

The braking mechanism of the present invention monitors each priceincrement the virtual specialist performs. When a price moves up or downon a security instrument, the increment tracking field of the netmovement balance table 2012 is retrieved for the security. A securitybrake threshold (SBT) constant, and a security brake increment (SBI)constant is retrieved from the security constant table 2002. If thetotal consecutive number of price increments (TCPI) is greater than theSBT, then the PSPT is increased by the security brake increment, andthen stored back to the security constant table 2002. If the totalconsecutive number of price decrements (a negative value) is less thanthe SBT, the NSPT is decreased by the security brake increment, and thenstored back to the security constant table 2002. In this way, forsecurities which have experienced price movement greater than the setthresholds, the price movement will be slowed.

Still, the braking mechanism may not be effective enough in either anextreme bear or bull market for the security, or the market as a whole.In those instances, a halting mechanism is provided by the system. Thehalting mechanism acts much in the same way as the braking mechanism.The exception is that a security halt threshold (SHT) constant iscompared to the TCPI/TCPD field. If the absolute value of the TCPI/TCPDfield value exceeds the SBT, trading is halted for that particularsecurity. A notice appears on screen for a trader who tries to trade thesecurity, informing the user that trading has been halted by the system.Trading for the security may be resumed after an administratively setperiod of time, or manually through an administration module.

The virtual economy may have a finite amount of capital with which toclose arbitrage situations that might arise if the policy of theexchange is different than what is reflected by the prices on themarket. The virtual economy is unlike non-virtual economies, which mayhave an infinite amount of capital. A system administrator is provided aseparate control screen where changes to global constants, such as thePSPT, NSPT, SBT, SBI, etc., can be adjusted to affect the market. Ineffect, the password protected control screen serves as a volatilitycontrol module. The volatility control, or ghost trade, module is usedto implement and enhance monetary regulations, and the market as awhole. The desired effect is implemented by causing the system to issuebuy and sell programs which comprise coordinated, across the board,buying and selling timer intervals. A timer periodically queries theghost trading table 2014. Each security instrument record in the ghosttrading table 2014 is set to cause a trade for an administratively setnumber of times per trading day. If the timer detects that the timeinterval between trades for a security has ended, the ghost tradingmechanism retrieves a ghost buy probability (GBT) from the ghost tradetable 2014. A random trade constant (RTC) is generated by the system.Next, a ghost security buy/sell quantity (GBQ) is retrieved from theghost trade table 2014. If the GBT is greater than or equal to the RTC,a buy order is placed by the system for the number of shares specifiedby the GBQ. Otherwise, a sell order is placed for the number of sharesspecified by the GBQ.

The system of the present invention includes a virtual reserve bankprogram. The reserve bank program regulates the economy with monetarytools which are provided within the reserve bank program module. Withthese tools, certain system global constants, such as total money supplyand interest rates can be adjusted.

In the case of interest rates, adjustable global constants are builtinto the administration table 2016 for the virtual trading system. Byraising or lowering rates, the amount of interest paid on the virtualdollars not tied up in securities is adjusted for the users. In thisway, the unused money in users' accounts act as a money market accountsfor which interest is adjusted accordingly.

Alternatively, a virtual reserve bank program chairman can determineinterest rate and security threshold constants by using global interestthreshold constants (GITCs) which monitor inflationary and deflationarypressures in the system. Inflationary and deflationary pressure may bedefined as the size of the system economy, i.e., number of shares ofsecurities which obtain a certain defined price. For example, the totaloutstanding shares may have a combined par value of V$8 billion, and thetotal market price for the shares outstanding may be V$80 billion withabout V$5 billion average daily trading volume. The virtual specialistprogram, for the majority of securities in the system, may have setprice movement thresholds to 10,000 positive and 10,000 negative. Themoney market rate may be set to 7% under these market conditions by thereserve bank program. However, if prices on the exchange were to inflateto a value of V$200 billion, for example, price movement thresholdsmight be reset to 20,000 and 20,000 positive and negative respectively,and the money market interest rate reset to 15%.

Considering the vast cross-section of on-line users, comprisingdifferent interests, artistic tastes and economic buying powers, thesystem of the present invention further provides extremely usefulinformation for entities such as market research firms, movie andtelevision studios, phonorecord companies, radio stations and movierental companies. Accordingly, for select market research users, anon-line market research tool is provided which allows the marketresearch users to access statistical information about traderdemographics and artistic tastes.

BRIEF DESCRIPTION OF THE DRAWINGS

Referring now to the drawings in which like reference numbers representcorresponding parts throughout:

FIG. 1 is a block diagram of an exemplary hardware environment of thepresent invention;

FIG. 2 is a flowchart illustrating the general logic of a firstembodiment of the present invention;

FIG. 3 is a flowchart illustrating the logic of the pricing/tradingprogram of the first embodiment of the present invention;

FIG. 4 is a flowchart illustrating the logic of the generate marketprice program of the first embodiment of the present invention;

FIG. 5 is a flow diagram illustrating the logic of the virtualspecialist program of the first embodiment of the present invention;

FIG. 6 is a flow diagram illustrating the logic of the stop tradingprogram of the first embodiment of the present invention;

FIG. 7 shows an exemplary administration module Screen for a secondembodiment of the present invention.

FIG. 8A shows an exemplary interface for the second embodiment of thepresent invention with a new user registration screen;

FIG. 8B shows the interface screen of FIG. 8A with a new user welcomescreen displayed;

FIG. 9 shows the interface screen of FIG. 8A with a system home pagedisplayed;

FIG. 10 shows the interface screen of FIG. 8A with a user portfolio pagedisplayed;

FIG. 11 shows the interface screen of FIG. 8A with a trade confirmationscreen displayed;

FIG. 12 is a flow diagram illustrating the logic of an initial securitypricing program for the second embodiment of the system;

FIG. 13 is a flow diagram illustrating the logic of a security tradefulfillment and security price setting program of the second embodimentof the present invention;

FIG. 14 is a flow diagram illustrating the logic of a trade brakingprogram of the second embodiment of the present invention;

FIG. 15 is a flow diagram illustrating the logic of a trade haltingprogram of the second embodiment of the present invention;

FIG. 16 is a flow diagram illustrating the logic of a ghost tradingprogram of the second embodiment of the present invention;

FIG. 17 is a flow diagram illustrating the logic of a research markettool of the second embodiment of the present invention; and

FIG. 18 shows an administration module which is used to adjust constantsand variables in the system.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Overview of VirtualTrading System

The present invention comprises a computer-implemented trading systemfor derivative financial instruments. The present invention accepts buyand sell orders from traders for the derivative financial instruments,sets a market price based on the supply and demand, and participates inthe market as a trader in order to minimize price volatility. A firstpreferred embodiment of the present invention is a computer-implementedHOLLYWOOD STOCK EXCHANGE, which may be implemented as a simulation(i.e., game) or as an actual trading system for derivative financialinstruments representing movies, talent, CDs, and television programs.These derivatives could be purchased with dollars or with a virtualcurrency known as HOLLYWOOD DOLLARS which are controlled by a virtualreserve bank program.

The derivative financial instruments are identified by a Current TradingList displayed for the traders that comprises a list of movies invarious stages of production, talent, and other entertainment-orientedassets. The list contains:

-   -   name of the derivative financial instrument;    -   genre of the movie (action-adventure, mystery, western, comedy,        etc.);    -   production status (scripting, pre-production, filming, editing,        release, home-video, etc.); number of shares in circulation;    -   last trading price (printed every 15 minutes)    -   price movement (i.e. +/−HOLLYWOOD DOLLARS) since the previous        midnight (PST);    -   price movement since the previous mid-day;    -   price movement year to date;        Traders are able to view the list sorted by:    -   name, alphabetically;    -   genre, alphabetically;    -   productions status, alphabetically;    -   most active (number of shares traded yesterday);    -   biggest gainers;    -   biggest losers; and    -   fastest movers today (e.g., fastest 20 movers up and fastest 20        movers down).

Similar information would be provided for other derivative financialinstruments offered on the HOLLYWOOD STOCK EXCHANGE.

Each trader's portfolio is identified by a Portfolio data structure thatcomprises the trader's account status. This information includes:

-   -   the amount of cash in the trader's account (paid interest at the        system discount rate plus some increment, compounded daily);    -   current percentage rate paid to cash;    -   the total value of held stocks at the last selling price;    -   the total value of held bonds at the last selling price;    -   total portfolio value (TPV) (cash+bonds+stocks);    -   percentage of TPV in cash;    -   percentage of TPV in bonds; and    -   percentage of TPV in stocks.

Traders can generate any number of different reports for display,including:

-   -   lists of stocks and bonds being traded (see above);    -   index of total Hollywood stocks (HSXI) expressed as a number,        with 1000 defined as the aggregate total stock price value on        opening day, wherein HSXI=(today's gross stock-value)/(opening        day gross stock-value);    -   index of total HOLLYWOOD BONDS (HBXI) expressed as a number,        with 1000 defined as the aggregate total bond price value on        opening day, wherein HBXI=((today's gross bond-value)/(opening        day gross bond-value));    -   index of total HOLLYWOOD STOCK EXCHANGE (HMXI) comprised of all        stocks and bonds, and expressed as a number, with 1000 as the        aggregate total stock price value on opening, wherein        HMXI=((today's gross market-value)/(opening day gross        market-value));    -   lists of the top market performers, e.g., the top 10 traders in        percentage portfolio growth calculated as net portfolio        value−change=(% change of cash)+(% change of stocks)+(% change        of bonds), and for each of the categories: yesterday (midnight        to midnight), last week (7 days, ending midnight, each        Thursday), last month (closes at midnight last calendar day of        month), last quarter (closes at midnight on last day of last        month/quarter), year-to-date (running daily total of percentage        value changes)/(days year-to-date), and annually (closes at        midnight on December 31 each year);    -   overall market condition report, including a list of stopped        issues with:        -   name;        -   last trading price;        -   time that stop-trade condition occurred;        -   percentage the issue actually moved on-the-day before the            stop-trade;        -   number of total shares and/or bonds traded today;        -   dollar value of total trades today;        -   number of buy and sell trades today; and        -   number of buy and sell trades this month.

Use of the above information will guide traders in making future buy andsell orders.

Hardware Environment

With reference to FIG. 1, a block diagram illustrates an exemplaryhardware environment for the preferred embodiments of the presentinvention. More particularly, a typical distributed computer system isillustrated, which uses the Internet 10 to connect client computers 12executing for example, Web browsers, to server computers 14 executing acomputer program embodying the present invention. A typical combinationof resources may include client computers 12 that are personal computersor work stations connected via the Internet 10 to server computers 14that are personal computers, work stations, minicomputers, ormainframes.

Generally, both the client computers 12 and the server computers 14 arecomprised of one or more CPUs 16, various amounts of RAM storingcomputer programs 20 and other data, and other components typicallyfound in computers. In addition, both the client computers 12 and theserver computers 14 may include one or more monitors, and fixed orremovable data storage devices 20 such as hard disk drives, floppy diskdrives, and/or CD-ROM drives. Also, input devices, such as mousepointing devices and keyboards, may be included.

Both the client computers 12 and the server computers 14 operate underthe control of an operating system, such as Windows, Macintosh, UNIX,etc. Further, both the client computers 12 and the server computers 14each execute one or more computer programs 18 under the control of theirrespective operating systems. The present invention is preferablyimplemented as one or more computer programs 18 executed by the servercomputer 14, although in alternative embodiments these computer programs18 may also be executed on the client computer 12.

Generally, the computer programs 18 implementing the present inventionare tangibly embodied in a computer-readable medium, e.g., one or moreof the fixed and/or removable data storage devices 20 attached to thecomputer. Under control of the operating system, the computer programs18 may be loaded from the data storage devices 20 into the RAM of thecomputer for subsequent execution by the CPU 16. The computer programs18 comprise instructions which, when read and executed by the computer,causes the computer to perform the steps necessary to execute the stepsor elements of the present invention.

Those skilled in the art will recognize that the exemplary environmentillustrated in FIG. 1 is not intended to limit the present invention.Indeed, those skilled in the art will recognize that other alternativehardware environments may be used without departing from the scope ofthe present invention.

I. General Logic of a First Embodiment of the Trading System

With reference to FIG. 2, a flowchart illustrating the general logic ofa first embodiment of the present invention is shown.

Block 200 represents the server computer 14 waiting for the next eventto occur. Once the event occurs, control is transferred to blocks202-224 to identify the event and respond accordingly.

Block 202 is a decision block that represents the server computer 14determining whether it received a request to display data from theclient computer 12. If so, block 204 represents the server computer 14transmitting data to the client computer 12 for subsequent display. Thedata transmitted for display preferably includes at least three types ofdata: the current list of trading derivative financial instruments, thetrader's portfolio, and other reports generated by the server computer14.

Block 206 is a decision block that represents the server computer 14determining whether it received a request to submit a buy order from theclient computer 12 for a particular derivative financial instrument,e.g., stock or bond. If so, block 208 represents the server computer 14processing the buy order by placing it in a queue in the memory of theserver computer 14. The buy order is a data structure comprising:

-   -   trader's account number;    -   trader's name;    -   the time and date of the order;    -   the stock or bond to buy;    -   the cash balance in the trader's account; and    -   a text-field where the trader may enter the total number to buy        (generally in multiples of 100).        In a first preferred embodiment, the buy order waits in the        queue for the expiration of a predetermined “sweep pricing        cycle.” The sweep pricing cycle occurs periodically, such as        every 15 minutes, or during another specified time interval. The        marked price the trader actually pays for the derivative        financial instrument is determined by the aggregate        supply/demand for the derivative financial instrument at the end        of the sweep pricing cycle during which the order was placed.

The market price is set by the pricing/trading program executed by theserver computer, which is described below in FIG. 3. The trader'saccount is then charged the market price for the derivative financialinstrument. If the purchase uses up all available cash in the trader'saccount, the trader is “loaned” enough money to pay for the purchase,and their account is charged interest at a predetermined rate, e.g., 18%a year compounded daily, on the negative account balance. The interestis charged against the trader's account until they accumulate more cashto zero out the balance, either by selling stocks or buying dollars.

Block 210 is a decision block that represents the server computer 14determining whether it received a request to submit a sell order fromthe client computer 12. If so, block 212 represents the server computer14 processing the sell order by placing it in queue in the memory of theserver computer 14. The sell order is a data structure comprising:

-   -   trader's account number;    -   trader's name;    -   the time and date of the order;    -   the stock or bond to sell;    -   the amount of the stock or bond in the trader's account; and    -   a text-field where the trader may enter the total number to sell        (generally in multiples of 100).        In the first preferred embodiment, like the buy order, the sell        order waits in the queue for the expiration of the predetermined        sweep pricing cycle. The market price at which the trader        actually sells the derivative financial instrument is determined        by the aggregate supply/demand for the derivative financial        instrument at the end of the sweep pricing cycle during which        the order was placed. The market price is set by the        pricing/trading program executed by the server computer, which        is described below in FIG. 3. The trader's account is then        credited with the market price for the derivative financial        instrument.

The sell order can be either produced by a trader or generated by theserver computer 14, as will be explained in more detail below. For asell order produced by a trader, the trader views a list of stocks orbonds owned by the trader on a monitor attached to the client computerand chooses to sell a quantity at the market price.

When the trader requests to view the list of stocks, the server computer14 transmits certain information to the client computer 12 for display,including, for each stock owned, the last trading price (LTP), thequantity of stocks, the purchase price, and the date purchased,Similarly, when viewing the list of bonds, the server computer 14transmits certain information to the client computer 12 for display,including, for each bond owned, the last trading price (LTP), theinterest rate being earned for each kind of bond, the quantity of bonds,the purchase price, and the date purchased.

Block 214 is a decision block that represents the server computer 14determining whether an internal timer for the sweep pricing cycle hasexpired. If so, block 216 represents the server computer 14 processingthe timer executing a pricing/trading program as described in FIG. 3.

Block 218 is a decision block that represents the server computer 14determining whether it received a request to change the discount rate.If so, block 220 represents the server computer 14 executing a discountrate program. In order to add or subtract liquidity, the server computer14 occasionally steps in to act as a virtual reserve bank program andadjust the discount rate. The discount rate is adjusted based on theperformance of the specific industry of the market. For the HOLLYWOODSTOCK EXCHANGE, the discount rate is adjusted to add or subtractliquidity to affect the growth of the entertainment industry. When theserver computer 14 lowers the discount, all the bonds seem to be abetter deal, because the bonds are paying a fixed rate interest thatnever changes. In the first preferred embodiment, this encouragestraders to buy more bonds, and this surge in buying demand causes acorrelated increase in bond prices as described above. The same thinghappens to stocks, because traders are making less money on the interestbeing paid on the cash balance in their trading account. When the servercomputer 14 raises the discount, the bonds seem to be a worse deal,since their advantage over the discount is smaller. Thus, the servercomputer 14 relaxes the buying pressures or demands for bonds, whichshould result in additional sell orders, or at least slow the buying ofbonds, thus decreasing their prices as they trade in the market.Likewise, stocks seem less attractive, since traders could make moremoney by keeping cash in their accounts and getting interest on it.

Block 222 is a decision block that represents the server computer 14determining whether it received a request to revise the derivative list.If so, block 224 represents the server computer 14 executing a listingprogram. The server computer 14 determines whether the list ofderivatives trading in the system should be revised. The list could berevised to reflect new derivative offerings, expired derivatives, anddelisted derivatives.

When a new derivative is offered, the price is based on the derivative'spotential value. For example, for a new stock offering, which representsa movie on the HOLLYWOOD STOCK EXCHANGE, the initial price of the stockcould be based on the movie's potential box office revenue. For a bondoffering, which represents talent on the Hollywood Bond Exchange, theprice of the bond could be based on the Hollywood Reporter's Star PowerIndex. A bond representing a talent with a low Star Power Index of 15would be issued with a higher yield than a bond representing a talentwith a high Star Power Index rating.

A warrant with a strike price is attached to the new derivative when itis offered. When the derivative and warrant are first issued, thewarrant is of no value until the strike price is reached. For a stock,the strike price could be reached after the movie has grossed a certainlevel of revenue. When a derivative is delisted from the exchange, astock due to the movie ending its production run or a talent due toretirement or death, for example, the warrants are called and thetraders are paid the value of the warrants, thus providing off-balancesheet financing for studios.

Pricing/Trading Program

With reference to FIG. 3, a flowchart illustrating the logic of thepricing/trading program of the present invention is shown. Block 300represents the server computer 14 retrieving the buy and sell ordersthat have accumulated in the queue during the period since the priorsweep pricing cycle. Block 302 represents the server computer 14matching the buy orders with the sell orders, although it is likely thanan identical number of buy and sell orders would not have accumulated inthe queue during the period. Block 304 represents the server computer 14executing the generate market price program described in FIG. 4 todetermine the market price for the derivative financial instruments.After the market price is determined, block 306 represents the servercomputer 14 updating the traders' portfolios to reflect the buy and sellorders in the queue being processed at the market price. Block 308represents the end of the pricing/trading program.

Generate Market Price Program

With reference to FIG. 4 a flowchart illustrating the logic of thegenerate market price program of the present invention is shown. Onepurpose of the generate market price logic is to generate a market pricefor a derivative financial instrument that reflects the demand or lackof demand for the derivative financial instrument in the market. Block400 represents the server computer 14 measuring the imbalance betweenthe buy and sell orders during the period since the prior sweep pricingcycle. Block 402 represents the server computer 14 determining the pricemovement of a derivative financial instrument caused by the imbalance inbuy and sell orders. Block 404 represents the server computer 14executing a virtual specialist program as described in FIG. 5 to providestability and liquidity to the market. Block 406 represents the servercomputer 14 executing the stop trade program, as described in FIG. 6, tostop trading in a derivative financial instrument if the projected pricemovement is excessive during the trading day and threatens the integrityof the market for that instrument. Block 408 represents the servercomputer 14 setting the market price, which becomes the price thepricing/trading program uses to update the traders' portfolios. Block410 represents the end of the generate market price program.

In measuring the imbalance between buy and sell orders, as representedby block 400, the absolute difference between the number of sells andthe number of buys is defined as the net movement in sweep (NMS). Asweep increment variable (SIV) is defined as the increase or decrease inprice caused by an incremental imbalance in the number of buy orders andsell orders. A lot movement variable (LMV) represents the incrementallot size that will result in a price increase or decrease of one SIV.The projected price movement (PM) can be expressed as: PM=(NMS/LMV)*SIV.

For example, with 42,000 buy orders and 30,000 sell orders for aparticular stock, the NMS=(42,000−30,000)=12,000. With SIV=$0.25 andLMV=5000, the price movement of the particular stock will be(12,000/5,000)*0.25=$0.50. Thus, the market price of the particularstock will be $0.50 greater than the last trading price.

One can easily see that, with such a pricing scheme, there is thepotential for great volatility in the price of a derivative financialinstrument and the eventual loss of investor confidence in the marketmechanism. In exchanges such as the HOLLYWOOD STOCK EXCHANGE, it wouldbe possible for one or more individuals to pursue trading strategiesthat would purposely cause drastic price fluctuations.

In order to encourage growth and stability in the capital marketregulated by the trading system of the present invention, a virtualspecialist program is executed by the server computer, as represented byblock 404 in FIG. 4. In executing the virtual specialist program, theserver computer 14 regulates the trading by actively trading in themarket out of a virtual specialist portfolio (VSP). In the firstpreferred embodiment, the virtual specialist program portfolio initiallycontains half of all the issued shares of each derivative financialinstrument.

Virtual Specialist Program

With reference to FIG. 5 a flow diagram illustrating the logic of thevirtual specialist program of the present invention is shown. Block 500is a decision block that represents the server computer 14 determiningwhether or not the price movement during the sweep pricing cycle isgreater or equal to an adjusted price movement threshold (APT). The APTis a constant in the memory of the server computer 14. If the APT isgreater than the price movement, then the server computer 14 does nottrade in the market. If the price movement is greater than or equal tothe APT, then the server computer 14 trades out of a virtual specialistprogram portfolio. The level of trading by the server computer 14 isdetermined by the amount that the price movement exceeded the APT. Thegreater the price movement, the more shares the server computer 14trades to offset the price movement.

In an exemplary embodiment of the present invention, the ATP=1.25 andthe server computer 14 performs the following steps: if PM=APT then theserver computer 14 matches 20% of unmatched shares; if PM=APT+0.25 thenthe server computer 14 matches 20% of unmatched shares; if PM=APT+0.50then the server computer 14 matches 30% of unmatched shares; ifPM=APT+0.75 then the server computer 14 matches 40% of unmatched shares;if PM=APT+1.0 then the server computer 14 matches 50% of unmatchedshares; if PM=APT+1.25 then the server computer 14 matches 60% ofunmatched shares; if PM=APT+1.50 then the server computer 14 matches 70%of unmatched shares; if PM=APT+1.75 then the server computer 14 matches80% of unmatched shares.

Block 502 represents the server computer 14 generating a buy or a sellorder to offset the price movement. The buy or sell order generated bythe server computer 14 is placed in the queue with the trader buy andsell orders to be processed during the next sweep cycle.

In the first preferred embodiment, since the virtual specialist programportfolio initially includes half of all the securities traded, theserver computer 14 could eventually deplete the virtual specialistprogram portfolio or cause the virtual specialist program portfolio toown all the shares of a stock. In order to maintain a balanced virtualspecialist program portfolio, and provide some liquidity to the market,the server computer 14 generates additional buy and sell orders tooffset orders generated in response to the price movement exceeding theAPT. Block 504 represents the server computer 14 generating timed buyand sell orders. In one embodiment of the invention, the server computer14 assess each stock and each bond in the virtual specialist programportfolio. The server computer 14 determines the deficit or surplus inthe item, and then place 1/288^(th) of the deficit as a “timed recoveryorder” into each successive 15 minute segment for the next 3 days. Whenthe pricing/trading program 255 matches buy and sell orders asrepresented by block 320, the pricing/trading program 255 includes any“timed recovery orders” outstanding for the last 3 days in the sweep.These orders are matched with the traders' buy and sell orders. Block506 represents the end of the virtual specialist program.

Stop Trading Program

FIG. 6 is a flow diagram illustrating the logic of the stop tradingprogram of the present invention. Block 600 represents the servercomputer 14 determining the price movement of a stock caused by theimbalance in buy and sell orders. Block 602 represents the servercomputer 14 measuring the price movement on the day, not just during thesweep cycle period. Block 604 is a decision block that represents theserver computer 14 determining whether the net price movement (NPM)within one “trading day” (i.e., midnight-midnight) is greater than 50%up or down. As represented by block 606, the buy and sell orders areremoved from the queue if the net price movement is greater than 50% fora stock trading above $20. At that point, the trading in that issue isstopped within the 15 minute period until further notice. All orders(buy and sell) for that stock during this sweep are unfilled. Thetrading has stopped due to “excessive order imbalance”.

For example, assume that the Last Trading Price (LTP) for “Rambo-17” is$67 (+7.5 on-the-day). During one 15-minute sweep pricing cycle, theserver computer 24 receives buy orders for 655,000 shares of “Rambo-17”.Also, the server computer 14 receives sell orders for 35,000 shares of“Rambo-17”. The server computer 14 evaluates the price movement for thesweep pricing cycle, and tests it to see if the net projected pricemovement “on-the-day” is greater than 50%. If it would be greater than50%, it stops trading in that instrument only. In this example, there isa net order-imbalance of 620,000 shares, which would create an upmovement in price of (+620,000/5000)*$0.25=+$31.00. Since the totalmovement on the day would be the $7.50 so far plus the additional$31.00, the net projected price movement on the day would be$31.00+$7.50=$38.50. If the opening price that day was $59.50, thepercentage projected price movement for the day is $38.50/$59.50=64%.Since the projected net price movement would be greater than 50%, thetrading is stopped for that instrument. If the projected price movementwas less than 50%, the price of the instrument would be adjustedaccordingly and trade in that stock continued. Block 608 represents theSTOP TRADE order that issues regarding the particular stock. Traders whoissued a buy or sell order for the stock are notified that the order hasnot been filled due to excessive order imbalance during the trading day.Finally, block 610 represents the end of the stop trading program.

II. General Logic of a Second Embodiment of the Trading System

As with the first embodiment described above, a second embodiment of thesystem of the present invention includes a database of securitiesprovided for trading in an open, computerized, exchange. Securities arelisted which relate to movies, actors, products or service companies.Thus, the following description of the second embodiment focuses on thedifferences in functionality from the first embodiment, and may omitfeatures which are nevertheless included in the second embodiment, butdo not require further description.

System Component Overview

With reference to FIG. 7, included within the system are a plurality oftables, including a global constant table 2022, development stage table2024, price history table, 2020, net price movement table, 2008,security price table 2006, security constant table 2002, trade historytracking table 2010, net price movement balance table, 2012, ghosttrading table 2014, administration table, 2016, and a user databasetable 2026, which are used as explained below. Interfacing with thesetables are the virtual specialist program, 2028, which passes economicand price control data between all of the tables, a reserve bankprogram, 2030, which passes economic control data between all of thetables, and the user interface, 700, which passes trade and portfolioinformation between itself and the user database as explained below.Also interfacing with all tables is a marketing tool, 2040, as describedbelow.

Administration Module

With reference to FIG. 18, the system includes an administration modulewhich is used, as explained below, to adjust constants and variables inthe system. The administration module is password protected andimplemented with browser interface 700, also described below.

User Registration and Login

With reference to FIG. 1, users may access the system over a network,using a standard interface. An exemplary system comprises a Web client12 connected to a network such as the Internet 10, which is connected toSQL compliant back-end database servers 14.

With reference to FIG. 8A, a standardized Web browser interface 700 maybe used by the user to register with the on-line trading system overInternet 10, providing demographic information, such as first name, lastname, age, sex, location, occupation, income, hobby interest, and thelike. Once registered, the user is given the option of choosing a uniqueuserID which will be used for logging in after registration. Inproviding the demographic information, the user also provides an e-mailaddress to which a randomly assigned password and other instructionalinformation can be forwarded.

With reference to FIG. 8B, once the user is registered, the first timeuser's default portfolio may be accessed using a temporary password freelogin by selecting the View Portfolio button 802 in the upper left handcorner of a Welcome Web page 804.

With reference to FIG. 9, after the user has received their permanentpassword, the system can be accessed over Internet 10 (FIG. 1) usingInternet browser 700 by selecting a start button 902 present on a Webhome page 804 for the system.

With reference to FIG. 10, the user is presented with their portfolio onWeb page 700. Automatically, the new user is provided with a fixedquantity of virtual currency 1002 in virtual dollars (V$) from a reservebank program, described below, to begin trading with. This quantity caneither be considered a loan from the reserve bank program, for whichinterest is charged, or a gift.

After logging in, the user's portfolio summary 1004 is displayed at thetop of the page, which displays the user's current cash balance 1002,amount held in stocks 1006, bonds 1008, and other types of securities.When a new user logs in, the cash value of the user's portfolio isusually represented solely in cash 1002, or in a money market account.However, sometimes the system may award new users a free securityholding up front, for example comprising bond securities 1008. The cashin the user's portfolio accrues at an interest rate set by a virtualreserve bank program.

Trade Orders

The user may trade security instruments by typing in the symbol 1012 forthe instrument for which a purchase is desired in a buy-sell area ofpage 1010. A quantity 1014 is also specified in buy sell area 1010. Ifthe user does not know the symbol for a particular instrument, a lookupor search function is provided in a symbol search area 1016 of thescreen using standard graphical user interface (GUI) features such asdrop-down list boxes, text search boxes, or slider bar lists.Alternatively, a ticker tape style updating menu 1018 at the bottom ofthe screen displays available instruments with the correspondinginstrument prices.

Once the user has successfully entered the symbol 1010 for an availableinstrument, and a quantity 1014, a buy button 1020 may be pressed inbuy-sell area 1010. With reference to FIG. 11, if the user has enoughcash on account, and if the instrument is available for trading, then aconfirmation screen 1102 appears before execution of the transaction.Upon confirmation, the trade is executed, and the cash is debited fromthe user's cash account 1002 (FIG. 10).

With reference to FIG. 10, if the user wishes to sell a securityinstrument, the same procedure is followed for placing a buy orderdescribed above, except, a sell button 1022 is clicked on in buy-sellarea 1010 of the portfolio page 1004. After confirmation, the marketprice for the shares sold is added to the user's cash account 1008, andthe shares are made available in the system for fulfilling purchaseorders.

Virtual Specialist Program

The system includes a virtual specialist program which, among otherthings, handles fulfillment of buy and sell orders. In the secondembodiment of the present system, the virtual specialist programcontrols the economy, and provides it with liquidity. The virtualspecialist program provides instantaneous liquidity by fulfilling allorders, whether or not there are equal and matching sell orders tooffset buy orders, and vice versa.

With reference to FIG. 12 a flow chart is shown illustrating thecalculations performed by the virtual specialist program for determiningan initial security price. The virtual specialist program calculates theinitial price in a public offering for a new security to be listed onthe exchange based on administrator entered values. A systemadministrator, through a password protected administration module, isable to set up a new security for listing on the exchange. In the caseof films listed in the HOLLYWOOD STOCK EXCHANGE described above, one wayto determine price is by stage of production of the movie. Each moviehas an associated estimated gross box office performance. Anadministrator is allowed to enter the estimated gross box officeperformance (EGBO) for the security, step 1202, in the administrationscreen. The administrator enters a quantity for the number initial ofshares (NIS) issued for the security, step 1204. The number of sharesissued is a hypothetical number since the virtual specialist program ofthe second embodiment does not actually keep any shares in reserve. Theuser also enters a code for the stage of production for the movie(described below), step 1205. The virtual specialist program takes theEGBO, and divides it by the NIS to determine a raw initial share price(RIS), step 1206.

The initial share price (ISP) is then adjusted by a stage of productionfactor. The following is a description of the different stages ofproduction for a movie, with the code format entered by theadministrator:

-   -   C=Concept: During a movie's concept stage, there is not active        production yet. Rumors are heard about a ‘new’ project; maybe a        sequel to an existing movie or a book adaptation.    -   D=Development: During a movie's development stage, the project        has attracted interest, and funds are spent on developing the        idea further. The final script premise is being perfected.        Pre-conceptual design work is taking place. More crew and actors        are dedicating themselves to the project in this stage.    -   P=Production: The project has moved to active production. All of        the crew and stars have been selected, and principal photography        is scheduled or commenced. The release date starts to become        fixed.    -   W=Wrap: The movie has been completed in its entirety, and is        awaiting release. The release date may have been pushed back a        short time, maybe a number of weeks or months, to an unscheduled        future date, awaiting a more favorable window of opportunity for        commercial success.    -   R=Release: The movie is playing in theaters.        When a movie is in the concept stage, it is much more difficult        to determine the likelihood of success for the movie than when        the movie is in the production, wrap, or release stage. The        production cycle relates to a continuum of success, begging with        the concept stage, where it is more difficult to judge potential        success, and ending with the release stage, where actual box        office receipts can be observed to more accurately determine the        potential success of a movie. Thus, when determining the initial        success of a movie, the RIS should be reduced accordingly.

Starting with step 1208 (FIG. 12), the virtual specialist program checksto see if the movie is in the concept stage. If so, then the price ofthe security is multiplied by an administratively set concept factor formovies in the concept stage, step 1210.

The virtual specialist program checks to see if the movie is in thedevelopment stage, step 1212. If so, then the price of the security ismultiplied by an administratively set development factor for movies inthe development stage, step 1214.

The virtual specialist program checks to see if the movie is in theproduction stage, step 1216. If so, then the price of the security ismultiplied by an administratively set production factor for movies inthe production stage, step 1218.

The virtual specialist program checks to see if the movie is in therelease stage, step 1224. If so, then the price of the security set tothe raw unchanged RIS, step 1226.

It should be recognized by one skilled in the art that the abovedescribed factors are not the only factors which could be used inadjusting the RIS. For example, the RIS could be adjusted by suchfactors as an industry box office index of the movie's cast, an industrypopularity index for the cast, an estimated budget, actual budget, orthe release season for the movie. Further, it should be recognized thatdifferent factors will be used for product, actor, or service companysecurities to determine initial price.

The calculated initial price for a movie is not statically tied to theabove formula. Regardless of the estimated price determined by the abovefactors, in the system of the second embodiment, the price is furtheradjusted after release of the movie. On the morning following a movie'srelease date, trading for the movie stock is halted. Trading is allowedto continue at the end of its opening weekend at an adjusted price thatis based on the following formula:(opening weekend box office gross/1 MM)*(a historic multiplier for totaldomestic gross)By historic observation, the ideal historic multiplier value for thesecond embodiment of the present invention has been found to be 3.6.

The initial price for a bond in the market is determined in a similarway as with stocks. In the case of movie stars listed in the HOLLYWOODSTOCK EXCHANGE described above, one way to determine price is byhistorical performance of movies the star has starred in.

In the HOLLYWOOD STOCK EXCHANGE, individual actors are available forinvestors in the form of star bonds. Star bonds pay interest dependingon a star's rating. Ratings are determined by a star's 36 month trailingaverage gross (TAG). TAG is the trailing average box-office gross of themovies a star has been in during the preceding 3 years. TAG values andratings correspond to one of 11 classes: AAA, AA, A, BBB, BB, B, CCC,CC, C, U, and D. Each one of the 11 star bond ratings classescorresponds to a virtual dollar interest rate or coupon rate (see chartbelow). The rating and coupon for an individual actor in the secondembodiment of the system of the present invention is determinedaccording their TAG value as follows:

-   -   AAA average gross: more than $100 million Coupon: V$60    -   AA average gross: $75-99.9 million Coupon: V$80    -   A average gross: $50-74.9 million Coupon: V$100    -   BBB average gross: $40-49.9 million Coupon: V$140    -   BB average gross: $30-39.9 million Coupon: V$160    -   B average gross: $20-29.9 million Coupon: V$180    -   CCC average gross: $15-19.9 million Coupon: V$220    -   CC average gross: $10-14.9 million Coupon: V$240    -   C average gross: $5-9.9 million Coupon: V$260    -   U (unrated) average gross: less than $5 million Coupon: V$300    -   D (default) average gross: none Coupon: V$0        Investors in star bonds receive 1/365th of the coupon interest        per bond, each day. The % annual rate of return, or current        yield is calculated by dividing the V$ coupon rate by the        current price. Low rated star bonds denote high risk. The daily        V$ payment of low rated star bonds is high to compensate traders        for taking the risk of owning a low rated star bond. A high        rating, such as AAA, denotes just the opposite.

The system is programmed under the principle that some traders buy starbonds whose rating is low in anticipation of the star's appearance in anupcoming blockbuster, raising the TAG (Trailing Average Gross), ratingand price. Conversely, traders sell star bonds whose rating is high inanticipation of the star's appearance in an upcoming flop, lowering theTAG, rating and price.

A star bond with a U rating means that the bond is un-rated and a ratingof D means that the bonds is in default.

Throughout the year, the system administrator updates TAG values, andthus, class ratings, as box office results are reported. Each Thursday,as new box office data is reported, the virtual specialist programsweeps the star bond market, looking for bond ratings which need to beupdated. Because a star bond's value is based on the cumulativeperformance of a movie, the virtual specialist program uses a 1.24multiplier of the gross to date to estimate the movie's total grossafter four weekends.

Alternatively, the price for bonds may be determined in a number ofways. One way a bond price may be determined is by assigning a boxoffice index to the bond, which is based on the bond rating, andmultiplying the index by a constant to obtain the price. Using thismethod, the bond rating can be adjusted by other factors, such as thenumber of films the bond's associated star has appeared in, the lengthof the star's career, the relative billing the star receives for theindividual films that the star has appeared in, and the public'smorality perception of the star. All of these factors areadministratively set by the system administrator, and are thenmultiplied together with the box office index to obtain an adjusted boxoffice index. The bond rating is then determined using the adjusted boxoffice index.

Another way of determining an initial bond price is to determine theinitial value in the same way the other security prices are determinedas described above; namely by using a number of market factors, whiledetermining future prices for bonds in the same way that other securityprices are adjusted by the virtual specialist program as described belowinstead of using tradition fixed bond par values.

With respect to non-bond securities in the second embodiment of thesystem of the present invention, the virtual specialist program stores arunning net movement balance (NMB) representing the quantity ofsecurities for orders that the virtual specialist program fulfills whichdo not have any offsetting orders. The imbalance is stored as a positivenumber if the buy-sell imbalance represents more buy trade ordersexecuted than sell orders, or a negative number if the buy-sellimbalance represents more sell orders executed than buy orders.

With reference to FIG. 13, a flowchart illustrating the calculations fordetermining price movement of a security is shown. Unlike tradingnon-virtual markets, the virtual specialist program of the secondembodiment does not control the economy by setting prices of sharesbased on last executed buy order price. Rather, the virtual specialistprogram determines the price of an instrument after each trade bycomputing an outstanding buy-sell imbalance. The system scans or sweepsa trade queue containing the data for buy and sell orders placed byusers for price adjustment, step 1202.

The buy-sell imbalance for the security, also referred to herein as thenet movement balance (NMB) is read from a net movement balance databasewhere net movement balances for all securities are tracked, step 1304.The virtual specialist program controls security prices by incrementingor decrementing security prices based on the NMB using a combination ofa security price increment (SPI) constant, and a pair of security pricethreshold constants. Both a positive security price threshold (PSPT)constant, and a negative security price threshold (NSPT) constant is setin a security constant table 2002 for each security in the system by thesystem administrator.

When a user executes a trade, a record is added to the trade queue. As afield in the trade record, a net trade movement (NTM) variable for atrade order is set to the positive quantity of shares if the trade orderis a buy order, and to the negative quantity of shares if the tradeorder is a sell order, step 1306. A new NMB is calculated by adding thepre-trade NMB, as retrieved from a net price movement table 2008 (NMB(old)), to the NTM, step 1308.

The NSPT and PSPT constants for the securities are retrieved thesecurity constant table 2002, step 1310. A security price increment(SPI) constant for the security which is the subject of the trade orderis retrieved from the security constant table 2002, 1312. The NMB isthen compared to the PSPT, step 1314. If the NMB is greater than thePSPT, then the price for the security (SP) is calculated by adding theSPI to the SP before the trade which was retrieved from a security pricetable 2002, step 1316. The NMB is then reduced by the PSPT and storedback to the net price movement table 2008, step 1318.

Conversely, if the NMB is less than the NSPT (a negative value), step1320, then the SP (new) is calculated by subtracting the SPI from the SP(old), step 1322. The NMB is then incremented by the NMB (which is alsonegative in this case), step 1324.

After the above calculations are made, the SP is stored in a securityprice table 2006, step 1326, which keeps track of all security prices.If the price of the security changed, a price history tracking table2020 is updated, performing a write SQL statement which adds a recordcomprising the SP, NMB, UserID, and other information relating to thetrade, step 1328. The NMB is updated in the net movement balance table2008 for the security that was the subject of the trade order, step1330. Each record of the net movement balance database further containsan increment tracking field for keeping track of the number ofconsecutive increments for the security instrument, up or down. Asidefrom the virtual specialist program, the stored information is used by amarketing tool, explained below, which provides statistical informationto market researchers.

The last steps for processing a trade record are to call the securitybrake check routine, step 1332, and the security halt check routine,step 1334, both explained in detail below.

Periodically, due to natural popularity of a particular security, or bymarket manipulation by an individual or groups of traders, a securitymay realize wild fluctuations in price. This is especially true in amarket in which virtual currency is used in a virtual market. Given thespecial circumstances of the virtual market, the system provides anartificial price control, or braking, mechanism.

The braking mechanism of the present invention monitors each priceincrement the virtual specialist program performs. When a price moves upor down on a security instrument, the increment tracking field of thenet movement balance table 2008 is retrieved for the security, step1402. A security brake threshold (SBT) constant, and a security brakeincrement (SBI) constant is retrieved from the security constant table2002, steps 1404-1406. If the total consecutive number of priceincrements (TCPI) is greater than the SBT, step 1408, then the PSPT isincreased by the security brake increment, and then stored back to thesecurity constant table 2002, step 1410. If the total consecutive numberof price decrements is greater than the SBT, step 1412, the NSPT isdecreased by the security brake increment, and then stored back to thesecurity constant table 2002, 1414. In this way, for securities whichhave experienced price movement greater than the set thresholds, theprice movement will be slowed.

Still, the braking mechanism may not be effective enough in either anextreme bear or bull market for the security, or the market as a whole.In those instances, a halting mechanism is provided by the system. Withreference to FIG. 15, a flowchart illustrating a process for preemptingtrading for certain securities with out of control price movements isshown.

The halting mechanism acts much in the same way as the brakingmechanism. The TCPI or TCPD is retrieved for the security which was thesubject of the trade order above from the price tracking history table2020, step 1502. The exception is that a security halt threshold (SHT)constant is compared to the value from TCPI/TCPD field, step 1504. Ifthe TCPI/TCPD field value exceeds the SHT, steps 1506 or 1508, thentrading is halted for that particular security, step 1510. A noticeappears on screen for a trader who tries to trade the security informingthe user that trading has been halted by the system. Trading for thesecurity may be resumed after an administratively set period of time, ormanually through an administration module.

With reference to FIG. 16, a ghost trading system process isillustrated. The ghost trading system of the second embodiment is usedas both a tool to bolster the trading level of some securities whichwould otherwise have low trading levels and, more importantly, as ameans for the system administrator to take control of the economy afterchanging thresholds, constants and global variables. The ghost tradingsystem is used to speed up the actions of the economy by creating volumethat, when processed with new variables changes the direction of themarket quickly.

For each of certain selected securities, a ghost trading mechanismrandomly creates automatic or ghost trades. A ghost trading table 2014is provided with a timer, which reads the system clock and determinesdaily time intervals, is included. The system periodically queries theghost trading table 2014, step 1602. Each security instrument record inthe ghost trading table 2014 is set to cause a trade for anadministrative set number of times per trading day. If the timer detectsthat the time interval between trades for a security has ended, step1604, the ghost trading mechanism retrieves a ghost buy probability(GBT) from the ghost trade table 2014, step 1606. A random tradeconstant (RTC) is generated by the system, 1608. Next, a ghost securitybuy/sell quantity (GBQ) is retrieved from the ghost trade table 2014,step 1610. If the GBT is greater than or equal to the RTC, step 1612, abuy order is placed by the system for the number of shares specified bythe GBQ, step 1614. Otherwise, a sell order is placed for the number ofshares specified by the GBQ, step 1616.

In the above discussion, the term trade or the term trade order alsoincludes stop limit orders and short sells. The only difference in thesetypes of trades is when the actual trade is posted. In the case of astop limit order placed by a user, for example, when the user specifiesthe condition in which the trade should take place, the stop limit orderis stored in a stop limit order queue. Each time a security changesprice, the stop limit queue is checked by the virtual specialist programto see if any stop limit conditions are met. If so, the normal tradequeue is updated with the stop limit order, and the virtual specialistprogram performs the trade as with a normal trade.

Virtual Reserve Bank Program

The system of the present invention includes a virtual reserve bankprogram. The reserve bank program regulates the economy with monetarytools which are provided within a reserve bank program module. Withthese tools, certain system global constants, such as total money supplyand interest rates can be adjusted.

In the case of interest rates, adjustable global constants are builtinto the an administration table 2016 for the virtual trading system. Byraising or lowering rates, the amount of interest paid on the virtualdollars not tied up in securities is adjusted for the users. In thisway, the unused money in users' accounts act as money market accountsfor which interest is adjusted accordingly.

In the second embodiment, a virtual reserve bank program chairman candetermine interest rates and security threshold constants by usingglobal interest threshold constants (GITCs), and acts as a monitor ofinflationary and deflationary pressures in the system. Inflationary anddeflationary pressure may be defined as the size of the system economy,i.e., number of shares of securities which obtain a certain definedprice. For example, the total outstanding shares may have a combined parvalue of V$8 billion, and the total market price for the sharesoutstanding may be V$80 billion with about V$5 billion average dailytrading volume. The virtual specialist program, for the majority ofsecurities in the system, may have PSPTs set to 10,000 and NSPTs set to−10,000. The money market rate may be set to 7% under these marketconditions by the reserve bank program. However, if prices on theexchange were to inflate to a value of V$200 billion, for example, thePSPT might be increased by 10,000 and the NSPTs decreased by 10,000, andthe money market interest rate reset to 15%.

As part of maintaining a sound economy, the system's virtual reservebank program and/or the virtual specialist program may monitor certaininflationary thresholds and trigger a drain of the system if thosethresholds are met. During a system drain, users are offered theopportunity to exchange virtual dollars into U.S. Dollars for exchangeof goods and/or services. The drain will have the effect of takingvirtual currency out of the system, thus helping to control inflation.Executing the drain comprises comparing the overall currency and/orsecurity holdings to a drain constant administratively set in the globalconstant table 2022. When the global constant has been reached orexceeded, users are offered the opportunity to purchase products, suchas software or mail order products, with their virtual dollars. For theusers who choose to do so, the cost of the products are debited fromtheir accounts and orders are added to a product fulfillment databasedesignating that the offered products need to be sent to the user.Similarly to the order tracking database, the orders are stored in adrain history database so that statistical information can be drawn inthe marketing research tool explained below.

Marketing Research Tool

With reference to FIG. 1, the second embodiment of a market researchtool is also implemented in the client server environment over Internet10. Computer 12 is used as a front end for a market research user whowishes to access the system of the present invention to view anddownload statistical research data which has been compiled and stored onservers 14 from the users' demographic data and trading history.

With reference to FIG. 17 the market research user accesses the marketresearch tool by logging into the system, step 1702. Each marketresearch user may establish an account, by either subscribing on-line orby telephone before using the system. The market research user isprompted for a user identification code and password for entry into thesystem.

Upon successful login into the system, the market research user ispresented with a list of securities in the system database, step 1704.The market research user may, by use of a mouse or arrow keys, highlightsecurities for which the user wishes to view or download statistics,step 1706. In order to choose more than one security, the marketresearch user may use a combination of the mouse, arrow keys and shiftkey. If the shift key is held down during selection, the priorselections made by the user are retained as highlighted selections incombination with the new selection. Selection criteria may also beselected to choose a certain class of securities, or securities whichmeet, for example, a minimal trading volume threshold over a specifiedperiod of time.

After selection of securities, the market research user is givenoptions, on screen, for categories of information which may be obtained,step 1708. Exemplary categories which may be obtained regarding asecurity or group of securities include: trade volume information, buyvs. sell volume information, timing of volume information, total volumeheld information, investment concentration information, priceinformation, stop limit order volume information, short sell volumeinformation, and aggregate index information.

More specifically, in choosing to obtain trade volume for particularsecurities, the market research user may assess public awareness of thesecurity. A very high trade volume over a period of time indicates ahigh degree of awareness for the security. Conversely, minimal volumeindicates very little awareness. A query is performed on a trade historytracking table 2010 maintained by the virtual specialist program whichcontains a mirror image of all trades fulfilled by the virtualspecialist program. A trade volume query answer table is created whichcontains, for each requested security, overall trade volume figures,yearly trade volume figures, monthly trade volume figures, and dailytrade figures.

With regard to buy vs. sell volume information, if the volume for asecurity is predominantly buy-side volume, or volume generated bytraders buying the security, it is generally due to a positiveawareness. A predominantly sell-side volume for a security indicatesthat traders believe the security to be overvalued. When the marketresearch user directs the system to obtain buy vs. sell volumeinformation, the market research tool performs a query on the tradehistory tracking table 2010 and the price history tracking table 2020described with respect to the virtual specialist program above. Thequery creates a temporary buy-sell volume answer table for allsecurities requested. The buy-sell volume answer table contains, foreach security, overall buy volume figures, overall sell volume figures,yearly buy volume figures, yearly sell volume figures, monthly buyvolume figures, monthly sell volume figures, daily buy volume figures,and daily sell volume figures.

With regard to timing of volume information, the trade volume for asecurity may be evaluated with respect to the stage of development thata project, for example a movie or actor's career, is in. A film that hasjust entered production, for example, hasn't been marketed by the studioto the public yet. High trading volume for the related movie stock mayrepresent great public awareness for the movie or positive reaction bytraders to the combination of actors who star in the movie. Similarly,in the movie star bond market, a non A-list actor that has high tradevolume has a relatively high awareness. When the market research userdirects the system to obtain timing volume information, the marketresearch tool performs a query on the trade history tracking table 2010and related development stage history table 2024, which keeps track ofstart and completion times of stages of development. The query creates atemporary timing volume answer table for all securities requested. Thetiming volume answer table contains, for each security, timing volumefigures for each stage of production or project.

With regard to the total volume held for a security, if traders buy aparticular security and generally hold on to it for a longer thanaverage period of time, it demonstrates a high degree of faith in thelong term performance of a security. For example, if traders tend toinvest and hold an actor's star bond, it is probably because they thinkshe has a long career ahead of her and will be popular for more thanjust one or two films. When the market research user directs the systemto obtain total volume held information, the market research toolperforms a query on the trade history tracking table 2010 whichcalculates the average number of shares held for each trader for therequested securities for each trader. The query creates a temporarytotal volume held answer table for all securities requested. The totalvolume held answer table contains, for each security, the time that eachtrader held each security they purchased, along with the volume held.

With regard to investment concentration, when there is heavy investmentvolume per shareholder in a particular security it demonstrates a highdegree of faith in a project or loyalty to an actor. For example, if50,000 traders each hold an average of 100 star bonds for a first actor,and 10,000 traders hold an average of 500 star bonds for a second actor,the first actor would tend to have more widespread appeal than thesecond actor, but the second actor would tend to have a more loyalfollowing. In financial markets, this is known as concentration. In downmarkets, holders of these securities are unwilling to sell; in upmarkets they are willing to add to their positions. When the marketresearch user directs the system to obtain investment concentrationinformation, the market research tool performs a query on the tradehistory tracking table 2010 to retrieve figures for the average volumeper share for all requested securities held at any time by all traders.The query creates a temporary investment concentration answer table forall securities requested. The total investment concentration answertable contains, for each security, the average volume that each traderheld for each requested security.

With regard to price information, security prices are tied to perceivedsales performance for the product or person which the security is tiedto. For example, movie stock prices are tied to perceived box officeperformance. If a movie stock is priced at $30, and a trader thinks thatthe movie will gross more than $30 million at the box office, the traderwill most probably buy the movie stock. Thus, the system of the presentinvention has the ability to find out what films, actors,phonorecordings or products consumers perceive will be successful. Whenthe market research user directs the system to obtain price information,the market research tool performs a query on the price history trackingtable 2020, described with respect to the virtual specialist programabove, to retrieve price per share for all requested securities held bytraders. The query creates a temporary price answer table for allsecurities requested. The price answer table contains, for eachsecurity, the price for each requested security.

With regard to stop limit order information, the system of the presentinvention tracks traders who set the price a security must obtain beforea trade order is filled. Stop limit orders are not filled in the eventthat the market doesn't hit the specified price before the time that theorder expires. This functionality gauges traders' sensitivity to aprice. For example, if a trader will only buy a movie stock below $30,that may indicate that the trader only perceives a limited upside forthe security, and thus believes that the movie will not be an industryblockbuster. When the market research user directs the system to obtainstop limit order information, the market research tool performs a queryon the trade history tracking table 2010 to retrieve price per share andvolume figures for all requested securities held at any time by alltraders which were stop limit orders, whether the limit for such orderswere met or not. The query creates a stop limit order answer table forall securities requested. The stop limit order answer table contains,for each security, price per share and volume figures for every stoplimit order requested by traders for the requested securities.

With respect to short sell information, if a trader thinks that thevalue of a security is going to decline, the trader can short sell thesecurity. Analysis of short sell volume on a security can gauge if thereis negative sentiment towards the security. When the market researchuser directs the system to short sell information, the market researchtool performs a query on the trade history tracking table 2010 toretrieve short sell volume figures. The query creates a short sellanswer table for all securities requested. The short sell answer tablecontains, for each security requested, the short sale trades orders byall traders.

With regard to index performance information, by aggregating marketinformation into indices, insights can be drawn about the market as awhole. For example, a movie studio security index can be generated bycalculating the sum of a studio's ten highest priced movie stocks overtime. The performance of such an index tends to measure the potentialstrength of a studio's distribution, or the potential box officepotential of the studio's upcoming films. When the market research userdirects the system to obtain index performance information, the marketresearch tool performs a query on the price history tracking table 2020to retrieve price change figures for the securities in all requestedindices. The query creates a temporary index performance answer tablefor all securities requested. The index performance answer tablecontains, for each requested index, price change over time figures.

In step 1708 (FIG. 17), the market research user may choose any numberof the above categories of information for display or download for thesecurities selected in step 1706 by an on-screen selection or checklist.

After the categories of information have been chosen, the marketresearch user may then select an on-screen Ok button to execute theresearch. The system then compiles and executes a selection of SQL querycalls according to all selections made by the user, step 1710. The queryresults are compiled and prepared for display, step 1712.

Once the results are compiled, pre-programmed graph, trend line andtextual templates are used to display the query results on the GUIclient display for all chosen securities and information categoriesdescribed above, step 1714.

After display, the user is given the option, by selection button, todownload the displayed results and underlying query data, step 1716. Ifselected, the market research user is allowed to select from a varietyof download formats, such as ASCII, xbase, dbf, HTML, tif, gif, bmp, orthe like, step 1718. The market research user is allowed to choose adownload location on the local client, step 1720. The system thenproceeds to compile the data into the chosen format, step, 1722. Thedata is then transferred, using any one of a variety of protocols suchas zmodem, xmodem, ftp, or any one of the OSI industry standardprotocols, step 1724. In the Web client-server environment, a TCP/IPsocket is used.

After transfer, the market research user is prompted for whether anotherquery is desired, step 1726. If another query is desired, execution ispassed back to step 1704 for another research iteration. Otherwise, timeand/or transaction charges, which are tracked from login time at step1702, are compiled and displayed on client 12, step 1728. The chargesare simultaneously stored in a billing database for the next billingcycle, step 1730. The user is then logged out of the system, step 1732.

CONCLUSION

The foregoing descriptions of the embodiments of the invention have beenpresented for the purposes of illustration and description. It is notintended to be exhaustive or to limit the invention to the precise formdisclosed. Many modifications and variations are possible in light ofthe above teaching. It is intended that the scope of the invention belimited not by this detailed description, but rather by claims appendedhereto.

What is claimed is:
 1. A method, comprising: determining, using acomputing device, an initial price of a financial instrument based atleast in part on an estimated revenue for a movie, in which thefinancial instrument represents the movie; receiving an order to buy thefinancial instrument; receiving an order to sell the financialinstrument; determining, using the computing device, an imbalancebetween a quantity of received buy orders and a quantity of receivedsell orders for the financial instrument; determining, using thecomputing device, a price of the financial instrument based at least inpart on the imbalance; and executing a trade on the financial instrumentat the determined price.
 2. The method of claim 1, in which theestimated revenue for the movie comprises a potential box office revenuefor the movie.
 3. The method of claim 1, further comprising: attaching awarrant with a strike price to the financial instrument.
 4. The methodof claim 1, further comprising: determining that the imbalance exceeds athreshold; and stopping trading of the financial instrument based on theimbalance exceeding the threshold.
 5. The method of claim 4, in whichdetermining the price of the financial instrument comprises: determininga price increase for the financial instrument based on the imbalance. 6.The method of claim 5, in which determining the price of the financialinstrument further comprises: comparing a threshold to the priceincrease; and increasing the price of the financial instrument when theprice increase exceeds the threshold.
 7. The method of claim 5, in whichdetermining the price of the financial instrument further comprises:increasing a previous price of the financial instrument from a previouscycle by the price increase.
 8. The method of claim 4, in whichdetermining the price of the financial instrument comprises: determininga price decrease for the financial instrument based on the imbalance. 9.The method of claim 8, in which determining the price of the financialinstrument further comprises: comparing a threshold to the pricedecrease; and decreasing the price of the financial instrument when theprice decrease exceeds the threshold.
 10. The method of claim 8, inwhich determining the price of the financial instrument furthercomprises: decreasing a previous price of the financial instrument froma previous cycle by the price decrease.
 11. The method of claim 1, inwhich receiving the order to buy the financial instrument comprises:receiving, from a remote device, the order to buy the financialinstrument, in which the computing device and the remote device are incommunication over a network.
 12. An apparatus, comprising: at least onecomputing device; and a non-transitory tangible medium storinginstructions that, when executed by the at least one computing device,cause the at least one computing device at least to: determine aninitial price of a financial instrument based at least in part on anestimated revenue for a movie, in which the financial instrumentrepresents the movie; receive an order to buy the financial instrument;receive an order to sell the financial instrument; determine animbalance between a quantity of received buy orders and a quantity ofreceived sell orders for the financial instrument; determine a price ofthe financial instrument based at least in part on the imbalance; andexecute a trade on the financial instrument at the determined price. 13.The apparatus of claim 12, in which the estimated revenue for the moviecomprises a potential box office revenue for the movie.
 14. Theapparatus of claim 12, wherein the instructions, when executed by the atleast one computing device, further cause the at least one computingdevice at least to: attach a warrant with a strike price to thefinancial instrument.
 15. The apparatus of claim 12, wherein theinstructions, when executed by the at least one computing device,further cause the at least one computing device at least to: determinethat the imbalance exceeds a threshold; and stop trading of thefinancial instrument based on the imbalance exceeding the threshold. 16.The apparatus of claim 15, in which determining the price of thefinancial instrument comprises: determining a price increase for thefinancial instrument based on the imbalance.
 17. The apparatus of claim16, in which determining the price of the financial instrument furthercomprises: comparing a threshold to the price increase; and increasingthe price of the financial instrument when the price increase exceedsthe threshold.
 18. The apparatus of claim 16, in which determining theprice of the financial instrument further comprises: increasing aprevious price of the financial instrument from a previous cycle by theprice increase.
 19. The apparatus of claim 15, in which determining theprice of the financial instrument comprises: determining a pricedecrease for the financial instrument based on the imbalance.
 20. Theapparatus of claim 19, in which determining the price of the financialinstrument further comprises: comparing a threshold to the pricedecrease; and decreasing the price of the financial instrument when theprice decrease exceeds the threshold.
 21. The apparatus of claim 19, inwhich determining the price of the financial instrument furthercomprises: decreasing a previous price of the financial instrument froma previous cycle by the price decrease.
 22. The apparatus of claim 12,in which the at least one computing device comprises the non-transitorytangible medium.
 23. The apparatus of claim 12, in which the at leastone computing device does not comprise the non-transitory tangiblemedium.
 24. An article of manufacture, comprising: a non-transitorytangible medium storing instructions that, when executed by at least onecomputing device, cause the at least one computing device at least to:determine an initial price of a financial instrument based at least inpart on an estimated revenue for a movie, in which the financialinstrument represents the movie; receive an order to buy the financialinstrument; receive an order to sell the financial instrument; determinean imbalance between a quantity of received buy orders and a quantity ofreceived sell orders for the financial instrument; determine a price ofthe financial instrument based at least in part on the imbalance; andexecute a trade on the financial instrument at the determined price. 25.The article of manufacture of claim 24, in which the estimated revenuefor the movie comprises a potential box office revenue for the movie.26. The article of manufacture of claim 25, further comprising the atleast one computing device.
 27. The article of manufacture of claim 24,wherein the instructions, when executed by the at least one computingdevice, further cause the at least one computing device at least to:attach a warrant with a strike price to the financial instrument. 28.The article of manufacture of claim 24, wherein the instructions, whenexecuted by the at least one computing device, further cause the atleast one computing device at least to: determine that the imbalanceexceeds a threshold; and stop trading of the financial instrument basedon the imbalance exceeding the threshold.
 29. The article of manufactureof claim 28, in which determining the price of the financial instrumentcomprises: determining a price increase for the financial instrumentbased on the imbalance.
 30. The article of manufacture of claim 29, inwhich determining the price of the financial instrument furthercomprises: comparing a threshold to the price increase; and increasingthe price of the financial instrument when the price increase exceedsthe threshold.
 31. The article of manufacture of claim 29, in whichdetermining the price of the financial instrument further comprises:increasing a previous price of the financial instrument from a previouscycle by the price increase.
 32. The article of manufacture of claim 28,in which determining the price of the financial instrument comprises:determining a price decrease for the financial instrument based on theimbalance.
 33. The article of manufacture of claim 32, in whichdetermining the price of the financial instrument further comprises:comparing a threshold to the price decrease; and decreasing the price ofthe financial instrument when the price decrease exceeds the threshold.34. The article of manufacture of claim 32, in which determining theprice of the financial instrument further comprises: decreasing aprevious price of the financial instrument from a previous cycle by theprice decrease.